﻿/***********************************************************************
 *            Project: CoreCms
 *        ProjectName: 核心内容管理系统                                
 *                Web: https://www.corecms.net                      
 *             Author: 大灰灰                                          
 *              Email: jianweie@163.com                                
 *         CreateTime: 2021/1/31 21:45:10
 *        Description: 暂无
 ***********************************************************************/


namespace CoreCms.Net.Model.ViewModels.Sms
{
    /// <summary>
    ///     凯信通接口短信
    /// </summary>
    public class SmsOptions
    {
        /// <summary>
        ///     是否开启
        /// </summary>
        public bool Enabled { get; set; }

        /// <summary>
        ///     短信类型
        /// </summary>
        public int SmsType { get; set; }

        /// <summary>
        ///     用户序列
        /// </summary>
        public string UserId { get; set; }

        /// <summary>
        ///     用户账号
        /// </summary>
        public string Account { get; set; }

        /// <summary>
        ///     用户密码
        /// </summary>
        public string Password { get; set; }

        /// <summary>
        ///     提交地址
        /// </summary>
        public string ApiUrl { get; set; }

        /// <summary>
        ///     短信签名
        /// </summary>
        public string Signature { get; set; }

        /// <summary>
        ///     短信单ip每日发送量
        /// </summary>
        public int SmsIpSendNumber { get; set; } = 20;

        /// <summary>
        ///     短信发送IP白名单
        /// </summary>
        public string SmsIpSendWhiteList { get; set; }


        /// <summary>
        ///     短信发送IP黑名单
        /// </summary>
        public string SmsIpSendBlackList { get; set; }

        /// <summary>
        /// 阿里云-模板-账户注册
        /// </summary>
        public string SmsAliYunTplForReg { get; set; }
        /// <summary>
        /// 阿里云-模板-账户登录
        /// </summary>
        public string SmsAliYunTplForLogin { get; set; }
        /// <summary>
        /// 阿里云-模板-验证验证码
        /// </summary>
        public string SmsAliYunTplForVeri { get; set; }
        /// <summary>
        /// 阿里云-模板-下单成功时
        /// </summary>
        public string SmsAliYunTplForCreateOrder { get; set; }
        /// <summary>
        /// 阿里云-模板-订单支付成功时
        /// </summary>
        public string SmsAliYunTplForOrderPayed { get; set; }
        /// <summary>
        /// 阿里云-模板-订单催付提醒
        /// </summary>
        public string SmsAliYunTplForRemindOrderPay { get; set; }
        /// <summary>
        /// 阿里云-模板-订单发货通知
        /// </summary>
        public string SmsAliYunTplForDeliveryNotice { get; set; }
        /// <summary>
        /// 阿里云-模板-售后确认通过
        /// </summary>
        public string SmsAliYunTplForAfterSalesPass { get; set; }
        /// <summary>
        /// 阿里云-模板-用户退款成功通知
        /// </summary>
        public string SmsAliYunTplForRefundSuccess { get; set; }
        /// <summary>
        /// 阿里云-模板-订单付款成功平台通知
        /// </summary>
        public string SmsAliYunTplForSellerOrderNotice { get; set; }
        /// <summary>
        /// 阿里云-模板-通用类型
        /// </summary>
        public string SmsAliYunTplForCommon { get; set; }

    }

    /// <summary>
    /// 短信发送回调结果
    /// </summary>
    public class SMSReturnData
    {
        /// <summary>
        /// 调用结果（调用结果:success为成功，faild为失败）
        /// </summary>
        public string ReturnStatus { set; get; }

        /// <summary>
        /// 调用信息（调用成功返回OK，失败显示失败原因，具体原因见下表）
        /// </summary>
        public string Message { set; get; }

        /// <summary>
        /// 账户余额	
        /// </summary>
        public int RemainPoint { set; get; }

        /// <summary>
        /// 任务序号（每次任务对应唯一的任务id）
        /// </summary>
        public int TaskID { set; get; }

        /// <summary>
        /// 号码个数（发送号码的个数）
        /// </summary>
        public int SuccessCounts { set; get; }

        /// <summary>
        /// 是否成功
        /// </summary>
        public bool IsSuccess { get; set; } = false;
    }


}